/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package beans;

import control.ManagementController;
import controladoresJpa.exceptions.PreexistingEntityException;
import java.util.List;
import javax.faces.application.Application;
import javax.faces.bean.ManagedBean;
import javax.faces.bean.RequestScoped;
import javax.faces.bean.SessionScoped;
import javax.faces.bean.ViewScoped;
import javax.faces.context.FacesContext;
import model.Esquema;
import model.Projetista;

/**
 *
 * @author felix
 */
@ManagedBean
@ViewScoped
public class NovoEsquemaBean {
    private List<Esquema> esquemas;
    
    private Esquema esquema;
    
    private ManagementController control;
    
    /** Creates a new instance of TipoAdmissaoBean */
    public NovoEsquemaBean() {
        control = new ManagementController();
        this.criar();
    }

    public Esquema getEsquema() {
        return esquema;
    }

    public void setEsquema(Esquema esquema) {
        this.esquema = esquema;
    }

    public List<Esquema> getEsquemas() {
        return esquemas;
    }

    public void setEsquemas(List<Esquema> esquemas) {
        this.esquemas = esquemas;
    }

    
    public void criar()  {
        setEsquema(new Esquema());
    }
    
    
    public void cancelar() {
        atualizarEsquemas();
        //botaoNovo = true;
        //botaoExcluir = true;
        
    }
    
  
       
    public void excluir(){
        control.excluirEsquema(esquema);
        this.criar();
        atualizarEsquemas();
    }

       public void salvar() {
        
        control.salvarNovoEsquema(esquema);
        atualizarEsquemas();
        this.criar();
    }
    
    /**
     * Atualiza a lista de tipos de admissão.
     */
    private void atualizarEsquemas() {
        /*FacesContext ctx = FacesContext.getCurrentInstance();
        Application app = ctx.getApplication();
        ProjetistaBean projetistaBean = (ProjetistaBean)app.createValueBinding("#{projetistaBean}").getValue(ctx);
        Projetista projetista = projetistaBean.getProjetista();
        esquemas = projetista.getEsquemaList();*/
        esquemas = control.recarregarEsquema();
        if(esquemas!=null && !esquemas.isEmpty()){
            esquema = esquemas.get(0);
        }
    
}

}